const render = () => {
  // top.$('#purehtml-container').html('Hello, render with jQuery');
  return Promise.resolve();
};

((global) => {
  global['jcpgyj'] = {
    // 在微应用初始化的时候调用一次
    bootstrap: ({ data, top }) => {
      // console.log('应用初始化purehtml bootstrap', top, 'window::', window);
      // if (data) {
      //   // console.log('store:', data.store);
      //   window.$store = data.store;
      //   //这里可以订阅父应用的store的所有mutation，进行个性化操作
      //   window.$store.subscribe((mutation, state) => {
      //     if (window.$store) {
      //       render();
      //     } else {
      //       top.$bus.on(render);
      //     }
      //   });
      // }
      return Promise.resolve();
    },
    // 应用每次进入都会调用 mount 方法，通常我们在这里触发应用的渲染方法
    mount: ({ data, top }) => {
      // console.log('应用进入purehtml mount:', top);
      // if (data) {
      // top是父应用的window对象
      // top.$bus.emit((callbackList) => {
      //   //这里可以定制callback的回调处理机制
      //   callbackList.forEach((fn) => {
      //     if (fn !== render) {
      //       fn();
      //     }
      //   });
      // });
      // render();
      // }
      //  写在这里可以用，
      // $('.menu li').click(function () {
      //   $(this).addClass('current').siblings().removeClass('current');
      //   var index = $(this).attr('egon');
      //   $('#' + index)
      //     .removeClass('hide')
      //     .siblings()
      //     .addClass('hide');
      // });
      // window.$store.dispatch('setData', { parent: n });
      // return render($);
    },
    // 应用每次切出/卸载 会调用的方法，通常在这里我们会卸载微应用的应用实例
    unmount: () => {
      console.log('应用切出purehtml unmount');
      return Promise.resolve();
    },
  };
})(window);
